FEXP Solver  1.0.0.0
CFEXPNetServerWinClient Class Reference

Connection client based on Windows socket. It is placed on the side of server. More...

#include <FEXPNetworkWinSocket.h>

Inheritance diagram for CFEXPNetServerWinClient:
Collaboration diagram for CFEXPNetServerWinClient:

Public Member Functions

 CFEXPNetServerWinClient (SOCKET socket, std::string &ip, size_t id, std::string &server_ip, std::function< t_ENetThrdMsg(size_t, size_t)> message_gttr, std::function< bool(size_t, size_t)> message_lchr, std::function< void(size_t, size_t, t_ENetThrdMsg)> message_sttr, std::function< Ptr< t_NetCalcData >(size_t)> clcdata_gttr, std::function< void(size_t)> state_update, std::function< bool(size_t)> synchronizer, std::function< void(size_t, t_fexpcommon_ct)> dtmacro_sttr, std::function< void(size_t, Ptr< CFEXGeomTools::t_BoundBox >, size_t)> mdmacro_sttr)
 
virtual ~CFEXPNetServerWinClient ()
 
virtual void Run () override
 
virtual void Close () override
 
- Public Member Functions inherited from ICFEXPNetServerClientNode< SOCKET >
 ICFEXPNetServerClientNode (SOCKET socket, std::string client_ip, size_t node_id, std::string server_ip, size_t port, std::function< t_ENetThrdMsg(size_t, size_t)> message_gttr, std::function< bool(size_t, size_t)> message_lchr, std::function< void(size_t, size_t, t_ENetThrdMsg)> message_sttr, std::function< Ptr< t_NetCalcData >(size_t)> clcdata_gttr, std::function< void(size_t)> state_update, std::function< bool(size_t)> synchronizer, std::function< void(size_t, t_fexpcommon_ct)> dtmacro_sttr, std::function< void(size_t, Ptr< CFEXGeomTools::t_BoundBox >, size_t)> mdmacro_sttr)
 
- Public Member Functions inherited from ICFEXPNetNodeConnection
 ICFEXPNetNodeConnection (size_t node_id, std::string server_ip, size_t port)
 
virtual ~ICFEXPNetNodeConnection ()
 
virtual size_t GetId () const override
 
virtual void SetId (size_t id) override
 
std::string GetServerNodeIP ()
 
size_t GetCommPort ()
 
- Public Member Functions inherited from ICFEXPNetBase
virtual ~ICFEXPNetBase ()
 

Additional Inherited Members

- Protected Member Functions inherited from ICFEXPNetNodeConnection
template<typename TInp , typename TFunc >
std::function< TFunc()> get_thread_functor (std::function< TFunc(TInp)> thread_fce, std::function< TInp()> input)
 
- Protected Attributes inherited from ICFEXPNetServerClientNode< SOCKET >
SOCKET _socket
 
std::string _client_ip
 
std::function< t_ENetThrdMsg(size_t, size_t)> _thread_message_gttr
 
std::function< bool(size_t, size_t)> _thread_message_lchr
 
std::function< void(size_t, size_t, t_ENetThrdMsg)> _thread_message_sttr
 
std::function< Ptr< t_NetCalcData >size_t)> _thread_clcdata_gttr
 
std::function< void(size_t)> _thread_state_update
 
std::function< bool(size_t)> _thread_synchronizer
 
std::function< void(size_t, t_fexpcommon_ct)> _thread_dtmacro_sttr
 
std::function< void(size_t, Ptr< CFEXGeomTools::t_BoundBox >, size_t)> _thread_mdmacro_sttr
 
- Protected Attributes inherited from ICFEXPNetNodeConnection
std::atomic_bool _connection_start
 

Detailed Description

Connection client based on Windows socket. It is placed on the side of server.

Constructor & Destructor Documentation

◆ CFEXPNetServerWinClient()

CFEXPNetServerWinClient::CFEXPNetServerWinClient ( SOCKET  socket,
std::string &  ip,
size_t  id,
std::string &  server_ip,
std::function< t_ENetThrdMsg(size_t, size_t)>  message_gttr,
std::function< bool(size_t, size_t)>  message_lchr,
std::function< void(size_t, size_t, t_ENetThrdMsg)>  message_sttr,
std::function< Ptr< t_NetCalcData >(size_t)>  clcdata_gttr,
std::function< void(size_t)>  state_update,
std::function< bool(size_t)>  synchronizer,
std::function< void(size_t, t_fexpcommon_ct)>  dtmacro_sttr,
std::function< void(size_t, Ptr< CFEXGeomTools::t_BoundBox >, size_t)>  mdmacro_sttr 
)

◆ ~CFEXPNetServerWinClient()

CFEXPNetServerWinClient::~CFEXPNetServerWinClient ( )
virtual

Member Function Documentation

◆ Close()

virtual void CFEXPNetServerWinClient::Close ( )
inlineoverridevirtual

◆ Run()

void CFEXPNetServerWinClient::Run ( )
overridevirtual

The documentation for this class was generated from the following files: